import Vue from 'vue'
import Vuex from 'vuex'
import getters from './getters'
import app from './modules/app'
import settings from './modules/settings'
import user from './modules/user'
import permission from './modules/permission'

Vue.use(Vuex)

const store = new Vuex.Store({ // ---------------------------------------------实例化 vuex
  // 整个项目中的数据采用模块化拆分
  modules: { // ---------------------------------------------------------------在modules 位置挂载导入的vuex 模块
    app,
    settings,
    user,
    permission
  },
  getters // --------------------------------------------------------------------getters 类似与 Vue 中计算属性
//   getters: {
//     //一种写法
//     sidebar(state) {
//       return state.app.sidebar
//     },
//     //简写,另一种写法
//     sidebar: state => state.app.sidebar,
//     device: state => state.app.device
//   }
})
// -----------------------------------------------------------------------------为了方便获取项目中一些繁琐使用的数据,所以特意去封装
export default store
